// 泛型类接口

// 函数类型接口
// interface ConfigFn {
//   (val1:string, val2:string):string
// }
// var setDate:ConfigFn = function(val1:string, val2: string):string {
//   return val1 + val2
// }
// setDate('name', '张三')

// 

// 定义泛型一
interface ConfigFn {
  <T>(value: T):T
}
var getData:ConfigFn = function<T>(value: T):T {
  return value
}
getData<string>('abcd')

// 定义泛型二
interface ConfigFn2<T> {
  (value: T): T
}
function getData2<T>(value: T):T {
  return value
}
var myGetData: ConfigFn2<string> = getData2
myGetData('hello')
